package com.jeomo.mem.provider.request;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jeomo.common.core.request.BaseRequest;

import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.util.Date;

/**
 * 会员积分补录
 *
 * @author:Jackpot
 * @create 2020-10-13 19:56
 * @description:
 */
public class MemPointsSuppleReq extends BaseRequest {

    @NotBlank
    /**订单号*/
    private String orderNo;
    @NotBlank
    /**商户*/
    private String merchant;
    @NotNull
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    /**消费时间*/
    private LocalDateTime payTime;
    @DecimalMin("0")
    /**消费总金额*/
    private Double payAmount;
    @NotBlank
    /** 会员卡号 */
    private String cardNo;
    @NotNull
    /**  会员卡版本号 */
    private Long cardVersion;
    /** 会员号 */
    private String memberNo;
    /**会员手机号*/
    private String memberPhone;
    /**会员昵称*/
    private String memberName;
    /** 会员等级 */
    private String memberLevel;
    @Min(0)
    /**当前积分*/
    private Integer currPoints;

    /**补录积分*/
    private Integer acquirePoints;
    /**积分过期时间*/
    private LocalDate expiredTime;
    /**  操作时间*/
    private LocalDateTime handleTime;
    /** 备注 */
    private String memo;

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getMerchant() {
        return merchant;
    }

    public void setMerchant(String merchant) {
        this.merchant = merchant;
    }

    public LocalDateTime getPayTime() {
        return payTime;
    }

    public void setPayTime(LocalDateTime payTime) {
        this.payTime = payTime;
    }

    public Double getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(Double payAmount) {
        this.payAmount = payAmount;
    }

    public String getCardNo() {
        return cardNo;
    }

    public void setCardNo(String cardNo) {
        this.cardNo = cardNo;
    }

    public Long getCardVersion() {
        return cardVersion;
    }

    public void setCardVersion(Long cardVersion) {
        this.cardVersion = cardVersion;
    }

    public String getMemberNo() {
        return memberNo;
    }

    public void setMemberNo(String memberNo) {
        this.memberNo = memberNo;
    }

    public String getMemberPhone() {
        return memberPhone;
    }

    public void setMemberPhone(String memberPhone) {
        this.memberPhone = memberPhone;
    }

    public String getMemberName() {
        return memberName;
    }

    public void setMemberName(String memberName) {
        this.memberName = memberName;
    }

    public String getMemberLevel() {
        return memberLevel;
    }

    public void setMemberLevel(String memberLevel) {
        this.memberLevel = memberLevel;
    }

    public Integer getCurrPoints() {
        return currPoints;
    }

    public void setCurrPoints(Integer currPoints) {
        this.currPoints = currPoints;
    }

    public Integer getAcquirePoints() {
        return acquirePoints;
    }

    public void setAcquirePoints(Integer acquirePoints) {
        this.acquirePoints = acquirePoints;
    }

    public LocalDate getExpiredTime() {
        return expiredTime;
    }

    public void setExpiredTime(LocalDate expiredTime) {
        this.expiredTime = expiredTime;
    }

    public LocalDateTime getHandleTime() {
        return handleTime;
    }

    public void setHandleTime(LocalDateTime handleTime) {
        this.handleTime = handleTime;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo;
    }
}
